Device, methods, and user interface for providing optimized entry of alphanumeric text

ABSTRACT

The present invention includes a device, method, and user interface for providing optimized entry of alphanumeric text. In one form, a method for providing selectable characters within a user interface includes determining an operating mode of a communication device and receiving an input associated with a selected input key. The method determines a group of characters associated with the selected key based on the operating mode and displays the group of characters within the user interface. The user interface may display a first character of the group of characters within a first portion of the user interface and the group of characters proximal to the first character within a second portion of the user interface.

RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.13/280,948 filed Oct. 25, 2011 and entitled “Device, Methods, and UserInterface for Providing Optimized Entry of Alphanumeric Text” which is acontinuation of U.S. application Ser. No. 12/577,544 filed Oct. 12, 2009and entitled “Device, Methods, and User Interface for ProvidingOptimized Entry of Alphanumeric Text” now U.S. Pat. No. 8,078,231 whichis a continuation of U.S. application Ser. No. 11/101,918 filed Apr. 8,2005 and entitled “Device, Methods, and User Interface for ProvidingOptimized Entry of Alphanumeric Text” now U.S. Pat. No. 7,603,142 issuedOct. 13, 2009 which is a continuation of U.S. application Ser. No.09/741,690 filed Dec. 19, 2000 and entitled “Device, Methods, and UserInterface for Providing Optimized Entry of Alphanumeric Text”, now U.S.Pat. No. 6,882,869, issued Apr. 19, 2005.

TECHNICAL FIELD OF THE INVENTION

The present invention generally relates to the field of communication,and more particularly to a device, method and user interface forproviding optimized entry of alphanumeric text.

BACKGROUND OF THE INVENTION

Current technologies exist for inputting characters within userinterfaces which have a limited number of keys for entering characterstrings. One such solution presently used includes a T9 input where theuser interface guesses the best match of possible characters based on astored list of words or names. For example, a user may enter a characterwithin a user interface and a selectable list of names starting with thecharacter may be displayed within the user interface.

Another conventional solution deployed by present systems includes“chording”, a method in which every letter takes two keystrokes to inputa character. For example, to enter a character “A” a user would have topress the “2” key and then any key on the top row (i.e. 1,2,3).Likewise, to enter a “C” a user would press the “2” key and then any keyfrom the third row (i.e. 7,8,9). Other variations of chording mayinclude entering characters based on position by selecting theappropriate number representing the characters position (i.e. 1,2,3 or4).

SUMMARY OF THE INVENTION

In accordance with the teachings of the present invention, a device,methods, and user interface for providing optimized entry ofalphanumeric text are disclosed. According to one aspect of theinvention, a method for providing selectable characters within a userinterface is disclosed. The method includes determining an operatingmode of a communication device and receiving an input associated with aselected input key. The method also includes determining a group ofcharacters associated with the selected key based on the operating modeand displaying the group of characters within the user interface.

According to another aspect of the invention, a communication device isdisclosed. The communication device includes a processor module operableto determine a group of characters associated with an operating mode inresponse to an input and a memory coupled to the processor for storinginformation associated with displaying the group of characters. Thedevice also includes a user interface operable to display selectablecharacters associated with the operating mode and an input deviceoperably coupled to the user interface. The input device provides aninput to select the group of characters.

It is a technical advantage of certain embodiments of the invention toprovide a simplified user interface for inputting character strings. Theuser interface requires minimal input by a user to display and selectalphanumeric text for selecting communication addresses. For example,one embodiment of the invention provides a cursor which may besubstantially centered about a group of selectable characters. The groupof characters may be displayed in a segmented manner to enhanceviewability of alphanumeric text within a user interface. The userinterface may display a group of characters based on a selected key andfurther display a bubble help cursor positioned relative to ahighlighted character within the group of characters. The bubble helpcursor includes the highlighted character and a user may scroll thegroup of characters using a bubble help cursor that displays the next orprevious character within the group of characters.

It is a further technical advantage of certain embodiments of theinvention to provide a user interface having one or more display modesfor displaying characters within a user interface. One such display modemay include displaying a group of characters horizontally within a userinterface and further displaying a selection cursor centered over thegroup of characters. The cursor displays a highlighted character withinthe group of characters and a user may scroll the group of charactersusing the cursor to display selectable characters within the group ofcharacters. In this manner, optimized viewing of selectable charactersmay be obtained allowing efficient access to alphanumeric textassociated with a selected key.

It is another technical advantage of certain embodiments of theinvention to provide a learned time-out sequence for highlighting andselecting characters displayed within a user interface. The time-outsequence may be based on a algorithm that calculates a user specificutilization period based on user interaction with the user interface.The time-out sequence may adapt to a specific user and calculate aninteraction period associated with the user interface based on a userselecting and/or scrolling characters or alphanumeric text displayedwithin the user interface.

It is a further technical advantage of certain embodiments of theinvention to provide a user interface which displays alphanumeric textbased on a communication mode. The communication device may be operatedin several different communication modes using different communicationreference types or protocols which may include a session initiationprotocol (SIP), Internet Protocol (IP), address domain names, telephonenumbers, Uniform Resource Locators (URLs), Uniform Resource Identifiers(URIs), or any other protocol or communication reference type.Alphanumeric text may be displayed within a user interface based on aselected mode providing a user access to mode specific characters forselecting communication addresses.

Other technical advantages are readily apparent to one skilled in theart from the attached figures, description, and claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates one embodiment of a communication device havingselectable operating modes according to teachings of the presentinvention;

FIG. 2 illustrates one embodiment of a flow diagram of a method fordisplaying alphanumeric text within a user interface of thecommunication device;

FIG. 3 illustrates one embodiment of the user interface for displayingselectable alphanumeric text;

FIG. 4 illustrates several display modes for displaying alphanumerictext within the user interface; and

FIG. 5 illustrates one embodiment of a flow diagram of a method fordisplaying and selecting alphanumeric text within the user interface.

DETAILED DESCRIPTION OF THE INVENTION

A communication device such as a network phone, cellular phone, SIPphone, etc. may include a user interface operable to displayalphanumeric text representing communication addresses such as telephonenumbers, .URL references, network addresses or other communicationaddresses or references for initiating communication with a network. Oneembodiment of a communication device may include a user interface and akeypad that provides access to selectable characters which may includealphanumeric text. The communication device may be operated in one ormore modes such as a conventional analog mode, a voice-over-URL mode, aURL-over-voice mode, a URL mode, or other modes which may be used bycommunication devices. As such, each key within the keypad may beassociated with a group of selectable characters which are displayablebased on an operating mode of the communication device. Alphanumerictext for an operating mode is displayable to a user in a visuallyefficient manner allowing a user to scroll, identify, manage, author,etc. alphanumeric text via a user interface which may have limited inputcapabilities.

The communication device includes a user interface for displayingalphanumeric text based on a communication mode in response to selectinga key. For example, a user may want to enter a character, such as aperiod (e.g. “.”) as a portion of a URL communication address. As such,the communication device may receive an input from the user via areduced set keypad (e.g. 10-key keypad) and display a group ofcharacters based on the selected key and a communication mode. In oneform, the group of characters may be horizontally displayed and mayinclude a cursor substantially centered over the horizontally displayedgroup of characters. A user may scroll the group of characters and thecursor may update and display the next character within the group ofcharacters. In this manner, a communication device may displayalphanumeric text in a visually efficient manner to allow a user toscroll and select a character from a group of characters with minimalinput and/or navigation between characters and/or operating modes of acommunication device.

FIG. 1 illustrates a communication device having selectable operatingmodes. The communication device, shown generally at 100, includes a userinterface 101 for displaying information such as communicationaddresses, names, alphanumeric text, soft buttons, and the like. Userinterface 101 includes several selectable entries 103 which may displaycommunication addresses such as telephone numbers and an associatedcommunication mode. Each selectable entry may include an associatedselection button operable to allow a user to select a communicationaddress entry. Communication device 100 also includes a status line 110for displaying alphanumeric text based on an operating mode ofcommunication device 100. Communication device 100 also includes adisplay line 102 for displaying a currently selected communicationaddress.

User interface 101 also includes a plurality of soft-keys havingassociated selection buttons. For example, user interface 101 maydisplay a redial soft-key 104 and a selection button 104 a, a modesoft-key 105 and a selection button 105 a, a new call soft-key 106 and aselection button 106 a, and a more soft-key 107 and a selection button107 a to display additional soft-keys and associated functions. Forexample, soft-key may be used to display several different types ofselectable functions which may be accessed and displayed within userinterface 101 and navigated by selecting an associated function button.In this manner, several functions associated with communication device100 may be accessed and selected by a user.

Communication device 100 also includes a keypad 108, which includes aplurality of keys for providing access to alphanumeric text. Forexample, the “2” key may provide access to the characters “a, b, c, 11the “3” key may provide access to the characters “d, e, f” etc. Each keymay provide access to alphanumeric text based on an operating mode ofcommunication device 100 thereby allowing specific groups of charactersto be associated with a selectable key. In this manner, a numeric keypadhaving a group of alphanumeric text associated-with each key may be usedby communication device 100. Communication device 100 further includes ascroll button 109 operable to scroll information displayed within userinterface 101.

During use, a user may select an operating mode, such as a desiredcommunication mode, and author a communication address usingalphanumeric text associated with selectable keys within keypad 108. Forexample, a voice-over-URL mode (“V/U”) and a horizontal display mode maybe selected for authoring communication addresses using user interface101. For example, user interface 101 may horizontally display thecharacters “a, b, c” in response to a user selecting the “2” key onkeypad 108. Communication device 100 may also highlight a characterwithin the displayed group of characters to identify a selectablecharacter within the group of characters. A user may then select the “2”key or scroll button 109 to access an adjacent character within thegroup of characters displayed within user interface 101.

In one embodiment, communication device 100 may calculate a time-outperiod associated with a user interacting with keypad 108. For example,a user may select a key within keypad 108 and further select the samekey to access one of the characters within the group of charactersdisplayed within user interface 101. As a user repeatedly selects thesame key, a time-interval may be determined between successive keyselections and a time period may be calculated using an algorithm. Assuch, communication device 100 may “learn” a time-out period for thecurrent user and automatically scroll, select, update, highlight, etc.characters displayed within user interface 101 thereby reducing inputrequired by a user.

For example, a user may typically scroll a displayed character after apredetermined period of time (e.g., average scroll time interval is 1.5seconds). As such, communication device 100 may determine the amount oftime a user takes to scroll a character and may automatically scroll tothe next character for a user based on a time-out period for the userelapsing. In one embodiment, communication device 100 may use astatistical analysis to calculate a time-out period for specific users.A time-out period may be stored within a parameter identifying aspecific user. Upon a user providing minimal interaction withcommunication device 100, a parameter associated with the current usermay be identified and used to provide automatic entry, selection,scrolling, access, etc. of alphanumeric text displayed within userinterface 101.

For example, one or more users may have access to communication device100. Communication device 100 using learned time-out period forscrolling, selecting, entering, etc. alphanumeric text and may determinea parameter having a time-out period for one of the plurality of usersbased on the periodicity of the user inputting, scrolling, selecting,interacting, etc. with communication device 100.

In one embodiment, a display mode for displaying characters within userinterface 101 may be provided. A user may select a horizontal mode fordisplaying alphanumeric text within user interface 101. Selectablecharacters may be horizontally displayed based on a user selecting a keywithin key pad 108. A cursor may also be displayed and positioned overthe group of characters in a substantially centered manner. The cursormay display a highlighted character within the group of characters andmay update as a user scrolls the group of characters. In this manner, acursor may be used as a “bubble-help” cursor providing visuallyefficient access to selectable characters within user interface 101.

FIG. 2 illustrates a flow diagram of a method for displayingalphanumeric text within a user interface of a communication device. Themethod may be deployed using the communication device illustrated inFIG. 1 or other devices, systems, user interfaces, etc. which may usethe method of FIG. 2. The method begins generally at step 200. At step201, the method determines a mode associated with operating acommunication device. For example, a communication mode may be selectedfor accessing alphanumeric text which may be specific for that mode. Inother embodiments, a display mode may be determined such as verticaldisplay mode, horizontal display mode, horizontal segmented displaymode, horizontal segmented with active positionable cursor display mode,or any combination of operating modes for accessing selectablealphanumeric text. Although mode selection at step 201 contemplates aninitial determination, the user or device 100 can change the mode on acharacter-by-character basis. For example, a user can select anuppercase mode on a per character basis. Also device 100 canautomatically adjust the input mode by recognizing the context of theentry. For example, when in URL mode, device 100 may recognize that theuser is entering an IP address, and automatically set the modeaccordingly. This change of mode may be done automatically or manuallybefore or during the input of an entry in device 100. Upon determining amode, the method then proceeds to step 202 where the method receives aninput in response to selecting a key. For example, a user may select akey on a keypad corresponding to the “6” key. This key has multipleassociated characters. If the user selects a key with only oneassociated character, such as the “1” key, then the method may enterthat character immediately and wait to receive the next key selection atstep 202.

If the selected key is associated with more than one character, themethod proceeds to step 203 where a group of characters associated withthe selected key is displayed within a user interface based on thedetermined mode. For example, a communication device may have a defaultdisplay mode for displaying characters corresponding to a selected key.A group of characters corresponding with a selected key may be displayedbased on the default display mode. For example, if the key 6 is selectedthe group “m n o 6” may be displayed based on the selected key and adisplay mode. In one embodiment, characters may be displayed in ahorizontal manner with a positionable cursor displayed above the groupof characters. The cursor may include the first character within thegroup of characters associated with the selected key.

Upon displaying the characters, the method proceeds to step 204 wherethe method determines if a user selects the same key. In the exampleabove, the character “m” of the group of characters may be highlightedand a user may select the 6 key or a scroll button to move the cursor toan adjacent character within the group of characters. If a user selectsthe same key or a scroll button, the method proceeds to step 207 wherethe method determines a time interval between the first time the 6 keywas selected and the second time the 6 key was selected. The method thenproceeds to step 208 where the method calculates a new time-out periodbased on the determined time interval. For example, the method mayemploy an algorithm to calculate an average time-out period for theuser. The method then proceeds to step 209 where the method updates theuser interface in response to the selected key. For example, the nextcharacter within the group of characters may be highlighted and thecursor may be updated to display the next character. The method thenproceeds to step 204 where the method determines if the same key wasselected.

In one embodiment, a cursor may be positioned along side of a group ofcharacters vertically displayed. The cursor may be centered along thegroup of characters and may display a highlighted character within thegroup of characters. As such, a user may access, scroll, select,interact, etc. the group of characters displaying within the userinterface.

If at step 204 the user does not select the same key, the methodproceeds to step 205 where the method determines if an input time-outperiod has elapsed. For example, a time-out period of 1.2 seconds mayelapse without a user selecting a character. If the time-out period haselapsed, the method proceeds to step 206 where the highlighted characteris entered and then to step 202 where the method repeats. If at step 205the time-out period did not elapse, the method proceeds to step 204where the method determines if the same input key is selected.

FIG. 3 illustrates a user interface for displaying selectablealphanumeric text. The user interface, shown generally at 300, includesan input line 301 for displaying selected characters and a first displayarea 302 for displaying a group of selectable characters. Display 300also includes a cursor 303 centrally positioned over display area 302and may be operable to display a highlighted character within the groupof characters. For example, if the first character displayed withindisplay area 302 is highlighted, cursor 303 would display the samecharacter.

User interface 300 also includes scroll back soft-key 304 operable tomove cursor 303 to a previous position and a scroll forward soft-key 305operable to move cursor 303 to a next position. A call initiation key306 is also provided to initiate communication using the referencedisplayed within input line 301. During use, user interface 300 maydisplay selectable characters based on a mode (i.e. communication mode,display mode, etc.). Characters displayed within first display area 302may be accessed using scroll back soft-key 304 and/or scroll forwardsoft-key 306. For example, a user may scroll to a character displayedwithin the third position first display area 302 and cursor 303 may beupdated accordingly.

FIG. 4 illustrates several display modes for displaying alphanumerictext within a user interface of a communication device. The displaymodes may be used with a user interface such as user interface 300 ofFIG. 3 or other devices, suggestions, or user interfaces operable todisplay the display modes of FIG. 4.

The display modes may be selected by a user, a system, a device, etc.and may be used to display alphanumeric text associated with a userselecting a key on a keypad, keyboard, or other input devices. A usermay scroll or access the display and characters and a cursor and/orhighlighted area may be updated in response to a user selecting a key orscroll button. For example, a user may access the second position of thedisplayed group of characters by depressing the same key twice.

Several examples of display modes which may be selected include avertical display mode for displaying characters in a verticalorientation, a left-justified display mode operable to display a groupof characters with a highlighted region for displaying a selectablecharacter and rotating characters sequentially within a′ statichighlighted region.

A centered display mode may be used in a similar manner as the leftjustified display mode centering a cursor over a group of characters anddisplaying a selectable character within the cursor. Left-justifiedseparated and centered separated display modes may also be used andinclude separating character spacing within a group of characters.

A left-justified indicated display mode may be used to provide ahighlighted region positioned over a leftmost portion of the group ofcharacters. Similarly, a centered justified indicated display mode maybe used to provide a cursor substantially centered over the group ofselectable characters. A left-justified segmented indicated display modeand a centered-segmented indicated display mode provide a group ofcharacters displayed having spaces between the groups of characters.

FIG. 5 illustrates a flow diagram of a method for displaying andselecting alphanumeric text within a user interface. The method may beused with the communication device illustrated in FIG. 1 or otherdevices or systems operable to use the method of FIG. 5. The methodbegins generally at step 500. At step 501, the method determines anoperating mode associated with a communication device. For example, themethod may determine a display mode for displaying characters within auser interface. One example may include horizontally displayingalphanumeric text within a user interface. Upon determining a mode, themethod proceeds to step 502 where the method determines if a key hasbeen selected for accessing alphanumeric text. For example a user mayselect a “#” key on a keypad to access alphanumeric text. If a user doesnot select a key, the method proceeds again to step 502. If a key hasbeen selected, the method proceeds to step 503 where the methoddetermines a group of characters associated with the selected key basedon the determined mode. For example, if a user selects the 7 key on akeypad, the method may determine the characters “p q r 7” are associatedwith the selected key and a determined mode.

Upon determining the group of characters, the method proceeds to step504 where the method displays an initial character of the charactergroup within a first portion of a user interface. The method displaysthe group of characters in a second portion of the user interface atstep 505. For example, the method may display the group of characters ashorizontally segmented centrally positioned under the first portion ofthe user interface. The method then proceeds to step 506 where themethod highlights the first character in the second portion of the userinterface.

Upon highlighting the first character in the second portion, the methodproceeds to step 507 where the method determines if the same key or ascroll button has been selected. If the same key or scroll button hasbeen selected, the method proceeds to step 508 where the method recordsa time interval between selection of the key and/or the scroll button.The method then proceeds to step 509 where the method calculates atime-out period associated with the newly recorded time interval. Forexample, the method may employ an algorithm to calculate an average timebetween selecting or scrolling the displayed characters. The method thenproceeds to step 510 where the method displays the next (or previous)character in the first portion of a user interface and to step 511 wherethe method highlights the next (or previous) character within the groupof characters displayed in the second portion of the user interface. Themethod then proceeds to step 507 where the method determines if the samekey is selected.

If at step 507, the same key is not selected (or scroll button not used)the method proceeds to step 512 where the method determines if atime-out period for displaying the character has elapsed. If thetime-out period has elapsed, the method proceeds to step 514 where themethod enters the highlighted character and to step 502 to receive thenext key selection. If at step 512, the time-out period has not elapsedthe method proceeds to step 513 to determine if a new key has beenselected. If a new key has been selected, the method proceeds to step503 where the method determines a group of characters based on theselected key and a mode. If at step 513 a new key is not selected, themethod proceeds to step 507 to determine if the same key is selected.

In one embodiment, a user may enter or select a character displayedwithin a user interface. For example, a user may select an “enter” keyoperably associated with a user interface to select a highlightedcharacter. As such, the method of FIG. 5 may be modified to update atime-out period based on the user entering the highlighted character.For example, a user may repeatedly select a key to scroll the charactersdisplayed within the user interface and subsequently select and “enter”key to select a highlighted character. An algorithm may then be used tocalculate a new time period based on the user accessing a characterwithin the group of characters and selecting a character using an“enter” key.

Although the present invention has been described with severalembodiments, a myriad of changes, variations, alterations,transformations, and modifications may be suggested to one skilled inthe art, and it is intended that the present invention encompass suchchanges, variations, alterations, transformations, and modifications asfall within the scope of the appended claims.

What is claimed is:
 1. An interface, comprising: a first display portionconfigured to display a plurality of soft keys; a second display portionconfigured to: display a group of characters associated with a first keyselection in response to the first key being selected; and highlight afirst character in the group of characters; and a processor operable to:determine an amount of time that has elapsed since the first keyselection; if an amount of time is greater than a time-out period,automatically select the highlighted character; and calculate a newtime-out period based on a time interval between the first key selectionand a second key selection.
 2. The interface of claim 1, wherein thesecond key selection is the same as the first key selection.
 3. Theinterface of claim 2, further comprising a third display portionconfigured to highlight a second character in the group of charactersupon receiving the second key selection.
 4. The interface of claim 2,wherein the processor is further operable to calculate an averagetime-out period for a user.
 5. The interface of claim 1, wherein theprocessor is further operable to: associate the new time-out period witha user; and store the association of the new time-out period with theuser.
 6. The interface of claim 1, wherein the first display portion isfurther configured to display a cursor alongside the highlighted firstcharacter.
 7. A method, comprising: receiving a first key selection;determining a group of characters associated with the first keyselection; displaying the group of characters associated with the firstkey selection within a first portion of a user interface; highlighting afirst character in the group of characters; determining an amount oftime that has elapsed since the first key selection; and if the amountof time is greater than a time-out period, automatically selecting thehighlighted character; receiving a second key selection; determining atime interval between the first key selection and the second keyselection; and calculating a new time-out period according to the timeinterval.
 8. The method of claim 7, wherein the second key selection isthe same as the first key selection.
 9. The method of claim 8, furthercomprising highlighting a second character in the group of charactersupon receiving the second key selection.
 10. The method of claim 8,wherein calculating the new time-out period comprises calculating anaverage time-out period for a user.
 11. The method of claim 7, furthercomprising: associating the new time-out period with a user; and storingthe association of the new time-out period with the user.
 12. The methodof claim 7, further comprising displaying a cursor alongside thehighlighted first character.
 13. A non-transitory computer readablemedium comprising encoded logic configured, when executed by aprocessor, to cause a user interface to: receive a first key selection;determine a group of characters associated with the first key selection;display the group of characters associated with the first key selectionwithin a first portion of a user interface; highlight a first characterin the group of characters; determine an amount of time that has elapsedsince the first key selection; and if the amount of time is greater thana time-out period, automatically select the highlighted character;receive a second key selection; determine a time interval between thefirst key selection and the second key selection; and calculate a newtime-out period according to the time interval.
 14. The computerreadable medium of claim 13, wherein the second key selection is thesame as the first key selection.
 15. The computer readable medium ofclaim 14, wherein the logic is further configured to highlight a secondcharacter in the group of characters upon receiving the second keyselection.
 16. The computer readable medium of claim 14, wherein thecalculation of the new time-out period comprises calculating an averagetime-out period for a user.
 17. The computer readable medium of claim13, wherein the logic is further configured to: associate the newtime-out period with a user; and store the association of the newtime-out period with the user.
 18. The computer readable medium of claim13, wherein the logic is further configured to display a cursoralongside the highlighted first character.